home *** CD-ROM | disk | FTP | other *** search
/ Adobe Graphics & Publishing SDK 1996 December / Adobe Graphics & Publishing SDK 1996 December.iso / mac / After Effects 3.1 SDK Mac / Examples / UI Samples / Custom UI in fx window / AEFX_FXwin.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-06-04  |  4.2 KB  |  187 lines  |  [TEXT/CWIE]

  1. /**
  2.     AEFX_FXwin.h
  3.     
  4.     Part of the Adobe After Effects 3.1 SDK    
  5.     Copyright (c)1993-96, Adobe Systems Inc, All Rights Reserved.
  6.  
  7.     Revision History
  8.         1.0, created by dmw
  9. **/
  10.  
  11. #ifndef __FXWIN_H
  12. #define __FXWIN_H
  13.  
  14. #include <QDOffscreen.h>
  15.  
  16. typedef struct EX_Globals {
  17.     long         magic;
  18.     GWorldPtr     graphbits;
  19.     Rect        offRect;
  20.     
  21.     GWorldPtr    wedgebits;
  22.     Rect        wedgeRect;
  23.     Boolean        freshHist;
  24.     long        hist[256];
  25.     
  26. } EX_Globals;
  27.  
  28. Boolean CreateOffscreenBitMap( GWorldPtr *newOffscreen, short depth, Rect *inBounds );
  29. void DestroyOffscreenBitMap( GWorldPtr oldOffscreen );
  30.  
  31. enum {
  32.     EX_INPUT = 0,
  33.     EX_UI,
  34.     EX_CHANNEL,
  35.     EX_BLACK,
  36.     EX_WHITE,
  37.     EX_BLACK_FUZ,
  38.     EX_WHITE_FUZ,
  39.     EX_INVERT,
  40.     
  41.     EX_NUM_PARAMS
  42. };
  43.  
  44. typedef struct {
  45.     long                min;
  46.     long                max;
  47.     long                fuzz_min;
  48.     long                fuzz_max;
  49.     long                invert;
  50. } EX_Settings;
  51.  
  52. enum {
  53.     EX_Channel_LUM = 1,
  54.     EX_Channel_RED,
  55.     EX_Channel_GREEN,
  56.     EX_Channel_BLUE,
  57.     EX_Channel_ALPHA,
  58.     
  59.     
  60.     EX_Channel_CHANS_PLUS
  61. };
  62.  
  63. enum {
  64.     EX_Drag_WEDGE = 0,
  65.     EX_Drag_HANDLES
  66. };
  67.  
  68. #define EX_MAGIC    'JENS'
  69.  
  70. #define EX_HIST_WIDTH        256
  71. #define EX_HIST_HEIGHT        64
  72. #define EX_INPT_HEIGHT        10
  73. #define EX_WEDGE_HEIGHT        20
  74. #define EX_INPT_SLIDERS        66
  75. #define EX_INPT_OUTPTS        80
  76. #define EX_OUTPT_SLIDERS    92
  77.  
  78.  
  79. PF_Err SequenceResetup (
  80.     PF_InData        *in_data,
  81.     PF_OutData        *out_data,
  82.     PF_ParamDef        *params[],
  83.     PF_LayerDef        *output );
  84.  
  85.  
  86. PF_Err HandleEvent (
  87.     PF_InData        *in_data,
  88.     PF_OutData        *out_data,
  89.     PF_ParamDef        *params[],
  90.     PF_LayerDef        *output,
  91.     PF_EventExtra    *event_extra );
  92.  
  93.     
  94. typedef unsigned char        EX_Lut[256];
  95.  
  96.  
  97. #define PF_ADD_COLOR(NAME, RED, GREEN, BLUE)\
  98.     do {\
  99.         PF_Err    priv_err = PF_Err_NONE; \
  100.         def.param_type = PF_Param_COLOR; \
  101.         PF_STRCPY(def.name, (NAME) ); \
  102.         def.u.cd.value.red = (RED); \
  103.         def.u.cd.value.green = (GREEN); \
  104.         def.u.cd.value.blue = (BLUE); \
  105.         def.u.cd.dephault = def.u.cd.value; \
  106.         if (priv_err = PF_ADD_PARAM(in_data, -1, &def)) return priv_err; \
  107.     } while (0)
  108.  
  109.  
  110. #define PF_ADD_SLIDER(NAME, VALID_MIN, VALID_MAX, SLIDER_MIN, SLIDER_MAX, DFLT) \
  111.     do {\
  112.         PF_Err    priv_err = PF_Err_NONE; \
  113.         def.param_type = PF_Param_SLIDER; \
  114.         PF_STRCPY(def.name, (NAME) ); \
  115.         def.u.sd.value_str[0] = '\0'; \
  116.         def.u.sd.value_desc[0] = '\0'; \
  117.         def.u.sd.valid_min = (VALID_MIN); \
  118.         def.u.sd.slider_min = (SLIDER_MIN); \
  119.         def.u.sd.valid_max = (VALID_MAX); \
  120.         def.u.sd.slider_max = (SLIDER_MAX); \
  121.         def.u.sd.value = def.u.sd.dephault = (DFLT); \
  122.         if (priv_err = PF_ADD_PARAM(in_data, -1, &def)) return priv_err; \
  123.     } while (0)
  124.  
  125.  
  126. #define PF_ADD_FIXED(NAME, VALID_MIN, VALID_MAX, SLIDER_MIN, SLIDER_MAX, DFLT, PREC, DISP) \
  127.     do {\
  128.         PF_Err    priv_err = PF_Err_NONE; \
  129.         def.param_type = PF_Param_FIX_SLIDER; \
  130.         PF_STRCPY(def.name, (NAME) ); \
  131.         def.u.fd.value_str[0] = '\0'; \
  132.         def.u.fd.value_desc[0] = '\0'; \
  133.         def.u.fd.valid_min = ((VALID_MIN) * 65536.0); \
  134.         def.u.fd.slider_min = ((SLIDER_MIN) * 65536.0); \
  135.         def.u.fd.valid_max = ((VALID_MAX) * 65536.0); \
  136.         def.u.fd.slider_max = ((SLIDER_MAX) * 65536.0); \
  137.         def.u.fd.value = def.u.fd.dephault = ((DFLT) * 65536.0); \
  138.         def.u.fd.precision = (PREC); \
  139.         def.u.fd.display_flags = (DISP); \
  140.         if (priv_err = PF_ADD_PARAM(in_data, -1, &def)) return priv_err; \
  141.     } while (0)
  142.  
  143.  
  144. #define PF_ADD_ANGLE(NAME, DFLT) \
  145.     do {\
  146.         PF_Err    priv_err = PF_Err_NONE; \
  147.         def.param_type = PF_Param_ANGLE; \
  148.         PF_STRCPY(def.name, (NAME) ); \
  149.         def.u.ad.value = def.u.ad.dephault = (DFLT) * 65536.0; \
  150.         if (priv_err = PF_ADD_PARAM(in_data, -1, &def)) return priv_err; \
  151.     } while (0)
  152.  
  153.  
  154. #define PF_ADD_NULL(NAME) \
  155.     do {\
  156.         PF_Err    priv_err = PF_Err_NONE; \
  157.         def.param_type = PF_Param_NO_DATA; \
  158.         PF_STRCPY(def.name, (NAME) ); \
  159.         if (priv_err = PF_ADD_PARAM(in_data, -1, &def)) return priv_err; \
  160.     } while (0)
  161.  
  162.  
  163. #define PF_ADD_POPUP(NAME, CHOICES, DFLT, STRING) \
  164.     do {\
  165.         PF_Err    priv_err = PF_Err_NONE; \
  166.         def.param_type = PF_Param_POPUP; \
  167.         PF_STRCPY(def.name, (NAME) ); \
  168.         def.u.pd.num_choices = (CHOICES); \
  169.         def.u.pd.dephault = def.u.pd.value = (DFLT); \
  170.         def.u.pd.u.namesptr = (STRING); \
  171.         if (priv_err = PF_ADD_PARAM(in_data, -1, &def)) return priv_err; \
  172.     } while (0)
  173.     
  174.     
  175. #define PF_ADD_255_SLIDER(NAME, DFLT)\
  176.     PF_ADD_SLIDER( (NAME), 0, 255, 0, 255, (DFLT))
  177.  
  178.  
  179. #define PF_ADD_PERCENT(NAME, DFLT)\
  180.     PF_ADD_FIXED( (NAME), 0, 100, 0, 100, (DFLT), 1, 1)
  181.  
  182.  
  183. #define DH(P) (*(P))
  184.  
  185.  
  186. #endif /* __FXWIN_H  */
  187.